package edu.unmsm.ocaa.sisocaa.negocio.service.impl;

import java.util.ArrayList;
import java.util.List;

import javax.annotation.Resource;

import org.springframework.dao.DataAccessException;
import org.springframework.stereotype.Service;

import edu.unmsm.ocaa.sisocaa.integracion.dao.ComentarioDAO;
import edu.unmsm.ocaa.sisocaa.negocio.model.dto.ComentarioDTO;
import edu.unmsm.ocaa.sisocaa.negocio.model.dto.ComentarioEncDTO;
import edu.unmsm.ocaa.sisocaa.negocio.model.dto.EncuestDocDTO;
import edu.unmsm.ocaa.sisocaa.negocio.model.dto.EncuestaDTO;
import edu.unmsm.ocaa.sisocaa.negocio.service.ComentarioService;

/**
 * @author cgeronimo
 *
 */
@Service
public class ComentarioServiceImpl implements ComentarioService {

	@Resource
	ComentarioDAO com;
	
	public ComentarioEncDTO ObtenerComentarios(Integer usuid, Integer formid)
			throws DataAccessException {
		// TODO Auto-generated method stub
		List<ComentarioDTO> list=com.getComentariosForm(usuid, formid);
		ComentarioEncDTO comenc=new ComentarioEncDTO();
		if(list.size()>0){
		comenc.setFormid(formid);
		comenc.setUsuid(usuid);
		for (int i = 0; i < list.size(); i++) {
			List<EncuestaDTO> l=new ArrayList<EncuestaDTO>();
			EncuestaDTO e=new EncuestaDTO();
			e.setPq(list.get(i).getPorque());
			e.setPreg(list.get(i).getPreg());
			e.setSol(list.get(i).getSolucion());
			l.add(e);
			if(list.get(i).getPreg()==1){
				comenc.setPq1(l);
			}else if(list.get(i).getPreg()==2){
				comenc.setPq2(l);
			}else if(list.get(i).getPreg()==3){
				comenc.setPq3(l);
			}else if(list.get(i).getPreg()==4){
				comenc.setPq4(l);
			}else if(list.get(i).getPreg()==5){
				comenc.setPq5(l);
			}else if(list.get(i).getPreg()==6){
				comenc.setPq6(l);
			}else if(list.get(i).getPreg()==7){
				comenc.setPq7(l);
			}else if(list.get(i).getPreg()==8){
				comenc.setPq8(l);
			}else if(list.get(i).getPreg()==9){
				comenc.setPq9(l);
			}else if(list.get(i).getPreg()==10){
				comenc.setPq10(l);
			}else if(list.get(i).getPreg()==11){
				comenc.setPq11(l);
			}else if(list.get(i).getPreg()==12){
				comenc.setPq12(l);
			}else if(list.get(i).getPreg()==13){
				comenc.setPq13(l);
			}else if(list.get(i).getPreg()==14){
				comenc.setPq14(l);
			}else if(list.get(i).getPreg()==15){
				comenc.setPq15(l);
			}else if(list.get(i).getPreg()==16){
				comenc.setPq16(l);
			}else if(list.get(i).getPreg()==17){
				comenc.setPq17(l);
			}else if(list.get(i).getPreg()==18){
				comenc.setPq18(l);
			}else if(list.get(i).getPreg()==19){
				comenc.setPq19(l);
			}else if(list.get(i).getPreg()==20){
				comenc.setPq20(l);
			}else if(list.get(i).getPreg()==21){
				comenc.setPq21(l);
			}else if(list.get(i).getPreg()==22){
				comenc.setPq22(l);
			}else if(list.get(i).getPreg()==23){
				comenc.setPq23(l);
			}else if(list.get(i).getPreg()==24){
				comenc.setPq24(l);
			}else if(list.get(i).getPreg()==25){
				comenc.setPq25(l);
			}else if(list.get(i).getPreg()==26){
				comenc.setPq26(l);
			}else if(list.get(i).getPreg()==27){
				comenc.setPq27(l);
			}else if(list.get(i).getPreg()==28){
				comenc.setPq28(l);
			}else if(list.get(i).getPreg()==29){
				comenc.setPq29(l);
			}else if(list.get(i).getPreg()==30){
				comenc.setPq30(l);
			}else if(list.get(i).getPreg()==31){
				comenc.setPq31(l);
			}else if(list.get(i).getPreg()==32){
				comenc.setPq32(l);
			}else if(list.get(i).getPreg()==33){
				comenc.setPq33(l);
			}
		}
		}
		return comenc;
	}

	public void guardarComentarios(ComentarioEncDTO coms)
			throws DataAccessException {
		// TODO Auto-generated method stub
		EncuestaDTO enc=new EncuestaDTO();
		ComentarioDTO com1=new ComentarioDTO();
		if (!(coms.getPq1()==null)){
			List<EncuestaDTO> list=coms.getPq1();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(1);
			com.insertComentario(com1);
		}
		if (!(coms.getPq2()==null)){
			List<EncuestaDTO> list=coms.getPq2();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(2);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq3()==null)){
			List<EncuestaDTO> list=coms.getPq3();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(3);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq4()==null)){
			List<EncuestaDTO> list=coms.getPq4();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(1);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq5()==null)){
			List<EncuestaDTO> list=coms.getPq5();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(5);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq6()==null)){
			List<EncuestaDTO> list=coms.getPq6();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(6);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq7()==null)){
			List<EncuestaDTO> list=coms.getPq7();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(7);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq8()==null)){
			List<EncuestaDTO> list=coms.getPq8();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(8);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq9()==null)){
			List<EncuestaDTO> list=coms.getPq9();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(9);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq10()==null)){
			List<EncuestaDTO> list=coms.getPq10();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(10);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq11()==null)){
			List<EncuestaDTO> list=coms.getPq11();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(11);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq12()==null)){
			List<EncuestaDTO> list=coms.getPq12();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(12);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq13()==null)){
			List<EncuestaDTO> list=coms.getPq13();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(13);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq14()==null)){
			List<EncuestaDTO> list=coms.getPq14();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(14);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq15()==null)){
			List<EncuestaDTO> list=coms.getPq15();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(15);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq16()==null)){
			List<EncuestaDTO> list=coms.getPq16();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(16);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq17()==null)){
			List<EncuestaDTO> list=coms.getPq17();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(17);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq17()==null)){
			List<EncuestaDTO> list=coms.getPq17();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(17);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq18()==null)){
			List<EncuestaDTO> list=coms.getPq18();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(18);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq19()==null)){
			List<EncuestaDTO> list=coms.getPq19();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(19);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq20()==null)){
			List<EncuestaDTO> list=coms.getPq20();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(20);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq21()==null)){
			List<EncuestaDTO> list=coms.getPq21();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(21);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq22()==null)){
			List<EncuestaDTO> list=coms.getPq22();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(22);
			com.insertComentario(com1);
		}		
		if (!(coms.getPq23()==null)){
			List<EncuestaDTO> list=coms.getPq23();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(23);
			com.insertComentario(com1);
		}
		if (!(coms.getPq24()==null)){
			List<EncuestaDTO> list=coms.getPq24();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(24);
			com.insertComentario(com1);
		}
		if (!(coms.getPq25()==null)){
			List<EncuestaDTO> list=coms.getPq25();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(25);
			com.insertComentario(com1);
		}
		if (!(coms.getPq26()==null)){
			List<EncuestaDTO> list=coms.getPq26();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(26);
			com.insertComentario(com1);
		}
		if (!(coms.getPq27()==null)){
			List<EncuestaDTO> list=coms.getPq27();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(27);
			com.insertComentario(com1);
		}
		if (!(coms.getPq28()==null)){
			List<EncuestaDTO> list=coms.getPq28();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(28);
			com.insertComentario(com1);
		}
		if (!(coms.getPq29()==null)){
			List<EncuestaDTO> list=coms.getPq29();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(29);
			com.insertComentario(com1);
		}
		if (!(coms.getPq30()==null)){
			List<EncuestaDTO> list=coms.getPq30();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(30);
			com.insertComentario(com1);
		}
		if (!(coms.getPq31()==null)){
			List<EncuestaDTO> list=coms.getPq31();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(31);
			com.insertComentario(com1);
		}
		if (!(coms.getPq32()==null)){
			List<EncuestaDTO> list=coms.getPq32();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(32);
			com.insertComentario(com1);
		}
		if (!(coms.getPq33()==null)){
			List<EncuestaDTO> list=coms.getPq33();
			enc=list.get(0);
			com1.setFormid(coms.getFormid());
			com1.setUsuid(coms.getUsuid());
			com1.setPorque(enc.getPq());
			com1.setSolucion(enc.getSol());
			com1.setPreg(33);
			com.insertComentario(com1);
		}
		
		
		
	}

	public Boolean revisionComentarios(EncuestDocDTO enc,
			ComentarioEncDTO comenc) throws DataAccessException {
		// TODO Auto-generated method stub
		Boolean correcto=new Boolean(true);
		if (enc.getResp1()==0){
			if(comenc.getPq1()==null){
				correcto=false;
			}
		}else if(enc.getResp2()==0){
			if(comenc.getPq2()==null){
				correcto=false;
			}
		}else if(enc.getResp3()==0){
			if(comenc.getPq3()==null){
				correcto=false;
			}
		}else if(enc.getResp4()==0){
			if(comenc.getPq4()==null){
				correcto=false;
			}
		}else if(enc.getResp5()==0){
			if(comenc.getPq5()==null){
				correcto=false;
			}
		}else if(enc.getResp6()==0){
			if(comenc.getPq6()==null){
				correcto=false;
			}
		}else if(enc.getResp7()==0){
			if(comenc.getPq7()==null){
				correcto=false;
			}
		}else if(enc.getResp8()==0){
			if(comenc.getPq8()==null){
				correcto=false;
			}
		}else if(enc.getResp9()==0){
			if(comenc.getPq9()==null){
				correcto=false;
			}
		}else if(enc.getResp10()==0){
			if(comenc.getPq10()==null){
				correcto=false;
			}
		}else if(enc.getResp11()==0){
			if(comenc.getPq11()==null){
				correcto=false;
			}
		}else if(enc.getResp12()==0){
			if(comenc.getPq12()==null){
				correcto=false;
			}
		}else if(enc.getResp13()==0){
			if(comenc.getPq13()==null){
				correcto=false;
			}
		}else if(enc.getResp14()==0){
			if(comenc.getPq14()==null){
				correcto=false;
			}
		}else if(enc.getResp15()==0){
			if(comenc.getPq15()==null){
				correcto=false;
			}
		}else if(enc.getResp16()==0){
			if(comenc.getPq16()==null){
				correcto=false;
			}
		}else if(enc.getResp17()==0){
			if(comenc.getPq17()==null){
				correcto=false;
			}
		}else if(enc.getResp18()==0){
			if(comenc.getPq18()==null){
				correcto=false;
			}
		}else if(enc.getResp19()==0){
			if(comenc.getPq19()==null){
				correcto=false;
			}
		}else if(enc.getResp20()==0){
			if(comenc.getPq20()==null){
				correcto=false;
			}
		}else if(enc.getResp21()==0){
			if(comenc.getPq21()==null){
				correcto=false;
			}
		}else if(enc.getResp22()==0){
			if(comenc.getPq22()==null){
				correcto=false;
			}
		}else if(enc.getResp23()==0){
			if(comenc.getPq23()==null){
				correcto=false;
			}
		}else if(enc.getResp24()==0){
			if(comenc.getPq24()==null){
				correcto=false;
			}
		}else if(enc.getResp25()==0){
			if(comenc.getPq25()==null){
				correcto=false;
			}
		}else if(enc.getResp26()==0){
			if(comenc.getPq26()==null){
				correcto=false;
			}
		}else if(enc.getResp27()==0){
			if(comenc.getPq27()==null){
				correcto=false;
			}
		}else if(enc.getResp28()==0){
			if(comenc.getPq28()==null){
				correcto=false;
			}
		}else if(enc.getResp29()==0){
			if(comenc.getPq29()==null){
				correcto=false;
			}
		}else if(enc.getResp30()==0){
			if(comenc.getPq30()==null){
				correcto=false;
			}
		}else if(enc.getResp31()==0){
			if(comenc.getPq31()==null){
				correcto=false;
			}
		}else if(enc.getResp32()==0){
			if(comenc.getPq32()==null){
				correcto=false;
			}
		}else if(enc.getResp33()==0){
			if(comenc.getPq33()==null){
				correcto=false;
			}
		}
		
		
		return correcto;
	}

}
